package com.xxjh.brs.ftp.common.api.enums;

/**
 * @author CHENCHEN
 * @title a
 * @company 新兴际华科技（天津）有限公司
 * @create 2024-07-03 19:21
 */
public enum ResponseStatus {

    SUCCESS(200, "SUCCESS..."),

    FAILURE(400, "FAIL..."),
    BAD_REQUEST(400, "Bad Request..."),
    NOT_FOUND(404, "404 Not Found..."),
    UNAUTHORIZED(401, "401 Unauthorized..."),
    AUTHORIZED_TIMEOUT(4001, "401 Your authentication token has expired. Please renew it to proceed..."),
    FORBIDDEN(403, "403 Forbidden..."),
    SERVERERROR(500, "500 Internal Server Error..."),

    //FILE_EXCEPTION
    FILE_LOCAL_DEL_EXCEPTION(500, "Delete Local Derictory Failed..."),

    //MAP_EXCEPTION
    MAP_RANGE_DOWNLOAD_EXCEPTION(500, "Download Map Tiles Retry>3, Download Failed..."),
    MAP_TILE_DOWNLOAD_EXCEPTION(500, "Download Map Tile Failed..."),
    MAP_DOWNLOAD_PROGRESS_EXCEPTION(500, "Get Download Map Progress Failed..."),
    MAP_TASK_RUNING_EXCEPTION(500, "Started Range Download Map Progress Failed, Task Runing..."),

    //MODELING_EXCEPTION
    MODELING_EXIST_EXCEPTION(500, "Modeling Exisi in Ftp..."),
    MODELING_END_EXCEPTION(500, "Modeling Task An End..."),
    MODELING_STARTING_EXCEPTION(500, "Modeling Starting In Scheduling..."),

    // FTP_EXCEPTION
    FTP_CONNECT_EXCEPTION(500, "FTP Server Connecting Failed..."),
    FTP_GET_CLIENT_EXCEPTION(500, "Get FTPClient Failed..."),
    FTP_DOWNLOADING_EXCEPTION(500, "Downloading Ftp Directory To Local Failed..."),
    FTP_UPLOADING_EXCEPTION(500, "Uploading Local Directory To Ftp Failed..."),
    FTP_FIND_FILE_EXCEPTION(500, "Search Ftp Derictory File Failed..."),
    FTP_FIND_LAST_UPDATE_DIRECTORY_EXCEPTION(500, "Search Ftp Last Update Derictory Failed..."),
    FTP_FIND_DIRECTORY_EXCEPTION(500, "Get Path Derictorites Failed..."),
    FTP_DELETE_DIRECTORY_EXCEPTION(500, "Delete Ftp Derictory Failed...");

    private final int code;

    private final String message;

    ResponseStatus(int code, String message) {
        this.code = code;
        this.message = message;
    }

    public int getCode() {
        return code;
    }

    public String getMessage() {
        return message;
    }
}